// license-header java merge-point
/**
 * This is only generated once! It will never be overwritten.
 * You can (and have to!) safely modify it by hand.
 */
package com.jrsystems.fleet.vehicle;
/**
 * @see com.jrsystems.fleet.vehicle.Model
 */
public class ModelDaoImpl
    extends com.jrsystems.fleet.vehicle.ModelDaoBase
{
    /**
     * @see com.jrsystems.fleet.vehicle.ModelDao#toModelVO(com.jrsystems.fleet.vehicle.Model, com.jrsystems.fleet.vehicle.vo.ModelVO)
     */
    public void toModelVO(
        com.jrsystems.fleet.vehicle.Model source,
        com.jrsystems.fleet.vehicle.vo.ModelVO target)
    {
        // @todo verify behavior of toModelVO
        super.toModelVO(source, target);
        // WARNING! No conversion for target.parent (can't convert source.getParent():com.jrsystems.fleet.vehicle.Model to com.jrsystems.fleet.vehicle.vo.ModelVO
        // WARNING! No conversion for target.variations (can't convert source.getVariations():com.jrsystems.fleet.vehicle.Model to com.jrsystems.fleet.vehicle.vo.ModelVO
        // WARNING! No conversion for target.vehicles (can't convert source.getVehicles():com.jrsystems.fleet.vehicle.Vehicle to com.jrsystems.fleet.vehicle.vo.VehicleVO
    }


    /**
     * @see com.jrsystems.fleet.vehicle.ModelDao#toModelVO(com.jrsystems.fleet.vehicle.Model)
     */
    public com.jrsystems.fleet.vehicle.vo.ModelVO toModelVO(final com.jrsystems.fleet.vehicle.Model entity)
    {
        // @todo verify behavior of toModelVO
        return super.toModelVO(entity);
    }


    /**
     * Retrieves the entity object that is associated with the specified value object
     * from the object store. If no such entity object exists in the object store,
     * a new, blank entity is created
     */
    private com.jrsystems.fleet.vehicle.Model loadModelFromModelVO(com.jrsystems.fleet.vehicle.vo.ModelVO modelVO)
    {
        // @todo implement loadModelFromModelVO
        throw new java.lang.UnsupportedOperationException("com.jrsystems.fleet.vehicle.loadModelFromModelVO(com.jrsystems.fleet.vehicle.vo.ModelVO) not yet implemented.");

        /* A typical implementation looks like this:
        com.jrsystems.fleet.vehicle.Model model = this.load(modelVO.getId());
        if (model == null)
        {
            model = com.jrsystems.fleet.vehicle.Model.Factory.newInstance();
        }
        return model;
        */
    }

    
    /**
     * @see com.jrsystems.fleet.vehicle.ModelDao#modelVOToEntity(com.jrsystems.fleet.vehicle.vo.ModelVO)
     */
    public com.jrsystems.fleet.vehicle.Model modelVOToEntity(com.jrsystems.fleet.vehicle.vo.ModelVO modelVO)
    {
        // @todo verify behavior of modelVOToEntity
        com.jrsystems.fleet.vehicle.Model entity = this.loadModelFromModelVO(modelVO);
        this.modelVOToEntity(modelVO, entity, true);
        return entity;
    }


    /**
     * @see com.jrsystems.fleet.vehicle.ModelDao#modelVOToEntity(com.jrsystems.fleet.vehicle.vo.ModelVO, com.jrsystems.fleet.vehicle.Model)
     */
    public void modelVOToEntity(
        com.jrsystems.fleet.vehicle.vo.ModelVO source,
        com.jrsystems.fleet.vehicle.Model target,
        boolean copyIfNull)
    {
        // @todo verify behavior of modelVOToEntity
        super.modelVOToEntity(source, target, copyIfNull);
    }

}